From: Yong Wen Chua Date: Wed, 14 Feb 2018 01:58:20 +0000 (+0800) Subject: Fix DocOpt deserialization type bounds X-Git-Tag: archive/raspbian/0.35.0-2+rpi1~3^2^2^2^2^2^2^2~22^2~2^2~97^2 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/success//%22http:/www.example.com/cgi/success/?a=commitdiff_plain;h=7e92513debcf0c62999206e3675493470c4b4ead;p=cargo.git Fix DocOpt deserialization type bounds This is wrt https://github.com/docopt/docopt.rs/pull/222 DocOpt does not support deserializing borrowed types. This change was reverted in https://github.com/docopt/docopt.rs/commit/7292a374e69afb192bb7aaa00f9d9f4afebc200d because it broke crates like Cargo etc. --- diff --git a/src/cargo/lib.rs b/src/cargo/lib.rs index d60792c7a..41615e3d8 100644 --- a/src/cargo/lib.rs +++ b/src/cargo/lib.rs @@ -40,7 +40,7 @@ extern crate core_foundation; use std::fmt; -use serde::Deserialize; +use serde::de::DeserializeOwned; use serde::ser; use docopt::Docopt; use failure::Error; @@ -103,7 +103,7 @@ impl fmt::Display for VersionInfo { } } -pub fn call_main_without_stdin<'de, Flags: Deserialize<'de>>( +pub fn call_main_without_stdin( exec: fn(Flags, &mut Config) -> CliResult, config: &mut Config, usage: &str,